﻿using System;
using System.ComponentModel;

namespace PropGridInfo
{
	public class XPropItem
	{
		public int Order
		{
			get
			{
				return this.theOrder;
			}
			set
			{
				this.theOrder = value;
			}
		}

		public string Id
		{
			get
			{
				return this.theId;
			}
			set
			{
				this.theId = value;
			}
		}

		public string Category
		{
			get
			{
				return this.theCategory;
			}
			set
			{
				this.theCategory = value;
			}
		}

		public bool ReadOnly
		{
			get
			{
				return this.theReadOnly;
			}
			set
			{
				this.theReadOnly = value;
			}
		}

		public string Name
		{
			get
			{
				return this.theName;
			}
			set
			{
				this.theName = value;
			}
		}

		public object Value
		{
			get
			{
				return this.theValue;
			}
			set
			{
				this.theValue = value;
			}
		}

		public string Description
		{
			get
			{
				return this.theDescription;
			}
			set
			{
				this.theDescription = value;
			}
		}

		public Type ProType
		{
			get
			{
				return this.theType;
			}
			set
			{
				this.theType = value;
			}
		}

		public bool Browsable
		{
			get
			{
				return this.theVisible;
			}
			set
			{
				this.theVisible = value;
			}
		}

		public virtual TypeConverter Converter
		{
			get
			{
				return this.theConverter;
			}
			set
			{
				this.theConverter = value;
			}
		}

		private string theId = "";

		private string theCategory = "";

		private string theName = "";

		private bool theReadOnly = false;

		private string theDescription = "";

		private object theValue = null;

		private Type theType = null;

		private bool theVisible = true;

		private TypeConverter theConverter = null;

		private int theOrder = 0;
	}
}
